with() works almost identically to run(). The only difference is that whereas you call run() on an object, with() takes the object as a parameter.

You can learn more about this in:
Run Edit